package cn.cdeden.knowledge.utils;

import cn.cdeden.knowledge.domain.dto.CoreConfigDto;
import cn.cdeden.knowledge.enums.ConfigTypeEnum;
import cn.cdeden.knowledge.service.CoreConfigService;
//import com.cdyd.ecm.sysVariable.domain.dto.CoreConfigDto;
//import com.cdyd.ecm.sysVariable.enums.ConfigTypeEnum;
//import com.cdyd.ecm.sysVariable.service.CoreConfigService;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Component;

/**
 * @ProjectName : ecm_hou
 * @Package : com.cdyd.ecm.modules.core.config.util
 * @ClassName : CoreConfigUtil
 * @Author : Yu.
 * @Description : // TODO
 * @Date : 2022/10/25 16:20
 * @Version : 1.0
 */

@RequiredArgsConstructor
@Component
public class CoreConfigUtils {

    private final CoreConfigService coreConfigService;


    private CoreConfigDto getByConfigCode(String configCode){
        return coreConfigService.getByConfigCode(configCode);
    }


    /**
     * @author Yu.
     * @Description // 前端获取数据
     * @Date 2022/10/25 16:27
     * @param configCode
     * @return com.cdyd.ecm.modules.core.config.domain.dto.CoreConfigDto
     **/
    public CoreConfigDto getByConfigCodeBefore(String configCode){
        CoreConfigDto byConfigCode = getByConfigCode(configCode);

        String typeCode = byConfigCode.getConfigTypeCode();
        if (
                StringUtils.equalsIgnoreCase(typeCode, ConfigTypeEnum.SHARE.getType()) ||
                StringUtils.equalsIgnoreCase(typeCode, ConfigTypeEnum.FRONT.getType())
        ){
            return byConfigCode;
        }
        return null;
    }

    /**
     * @author Yu.
     * @Description // 后端获取数据
     * @Date 2022/10/25 16:27
     * @param configCode
     * @return com.cdyd.ecm.modules.core.config.domain.dto.CoreConfigDto
     **/
    public CoreConfigDto getByConfigCodeAfter(String configCode){
        CoreConfigDto byConfigCode = getByConfigCode(configCode);

        String typeCode = byConfigCode.getConfigTypeCode();
        if (
                StringUtils.equalsIgnoreCase(typeCode, ConfigTypeEnum.SHARE.getType()) ||
                        StringUtils.equalsIgnoreCase(typeCode, ConfigTypeEnum.BACK.getType())
        ){
            return byConfigCode;
        }
        return null;
    }








}
